import axios from "axios"
import Vue from 'vue'
//导入 路由
import router from './router/index.js'
const http = axios.create({
  // 设置请求的默认根路径  为了方便
  
  baseURL: 'https://test.xiaoyang666.top/'  // api 即上面 vue.config.js 中配置的地址,
  // baseURL: '/bot/'  // api 即上面 vue.config.js 中配置的地址,

})
//设置跨域允许携带内容
Vue.axios.defaults.withCredentials = true;
//给整个请求 添加一个拦截器 设置请求头  把用户登录的tonken 放在请求头里面 便于服务端提取出来 验证用户
http.interceptors.request.use(function (config) {
  //如果 localStorage 里面有token
  if (localStorage.token) {
     // 加一个请请求头
    config.headers.Authorization = localStorage.token
  }
   
    return config;
  }, function (error) {
    // Do something with request error
    return Promise.reject(error);
  });


//响应拦截器  判断token是否过期
http.interceptors.response.use(function (response) { // ①10010 token过期（30天） ②10011 token无效
if (response.data.code === 4) {
    router.replace({
        path: '/loginHome' // 到登录页重新获取token
    })
} else if (response.data.token) { // 判断token是否存在，如果存在说明需要更新token
    localStorage.token = response.data.token;
}
    return response
}, function (error) {
    return Promise.reject(error)
})
//暴露 http  给mian.js
export default http